// 这里面全部是跟 员工 相关的接口函数
import request from '@/utils/request'

// 获取员工列表
export function getUserListPaged(params) {
  return request({
    url: '/sys/user',
    // data 和 params 的却别：params会以 queryString 拼接到 url 的后面 ==> params
    // data 是请求体参数，在请求鷈 body 中 ：post  put
    params
  })
}

// 使用get请求导出员工列表为Excel文件
export function exportUserList() {
  return request({
    url: '/sys/user/export',
    // 设置以什么样类型去解析响应回来的数据
    // 因为后台返回的数据不是 json 了，所以不能在按照 json 的格式解析，应该创建一个 blob 对象
    responseType: 'blob'
  })
}

// 下载员工导入模板接口
export function downloadUserTemplate() {
  return request({
    url: '/sys/user/import/template',
    responseType: 'blob'
  })
}

// 封装一个上传文件的接口
export function uploadExcel(data) {
  return request({
    url: '/sys/user/import',
    method: 'post',
    data
  })
}

// 删除用户
export function deleteEmployee(id) {
  return request({
    url: `/sys/user/${id}`,
    method: 'delete'
  })
}

// 新增员工的接口
export function addNewEmployee(data) {
  return request({
    url: '/sys/user',
    method: 'post',
    data
  })
}

// 获取员工基本信息
export function getUserInfo(id) {
  return request({
    url: `/sys/user/${id}`
  })
}

// 更新员工信息的接口
export function updateEmployee(data) {
  return request({
    url: `/sys/user/${data.id}`,
    method: 'put',
    data
  })
}

// 分配角色的接口
export function assignRole(data) {
  return request({
    url: '/sys/user/assignRoles',
    method: 'put',
    data
  })
}
